/**
 * Copyright &copy; 2012-2014 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package com.thinkgem.jeesite.modules.warehouse.entity;

import org.hibernate.validator.constraints.Length;

import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;

import javax.validation.constraints.NotNull;

import com.thinkgem.jeesite.common.persistence.DataEntity;
import com.thinkgem.jeesite.common.utils.excel.annotation.ExcelField;

/**
 * 仓库KPI监控Entity
 * @author hui.li
 * @version 2016-12-23
 */
public class WarehouseKpiMonitoring extends DataEntity<WarehouseKpiMonitoring> {
	
	private static final long serialVersionUID = 1L;
	private String warehouse;		// 仓库
	private Date date;		// 日期
	private String employee;		// 员工
	private String standardWorkingHours;		// 标准工时
	private String valueAddedHours;		// 增值工时
	private String abnormalWorkingHours;		// 异常工时
	private String supportWorkingHours;		// 支持工时
	private String overtimeHours;		// 加班工时
	private String workingHours;		// 上班工时
	private String idleHours;		// 空闲工时
	private String status;		// 状态，0表示未统计，1表示已统计
	
	private Date beginDate;
	
	private Date endDate;
	
	public Date getBeginDate() {
		return beginDate;
	}

	public void setBeginDate(Date beginDate) {
		this.beginDate = beginDate;
	}

	public Date getEndDate() {
		return endDate;
	}

	public void setEndDate(Date endDate) {
		this.endDate = endDate;
	}

	public WarehouseKpiMonitoring() {
		super();
	}

	public WarehouseKpiMonitoring(String id){
		super(id);
	}

	@Length(min=1, max=64, message="仓库长度必须介于 1 和 64 之间")
	@ExcelField(title="仓库",  align=1, sort=1)
	public String getWarehouse() {
		return warehouse;
	}

	public void setWarehouse(String warehouse) {
		this.warehouse = warehouse;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@NotNull(message="日期不能为空")
	@ExcelField(title="日期",  align=1, sort=2)
	public Date getDate() {
		return date;
	}

	public void setDate(Date date) {
		this.date = date;
	}
	
	@Length(min=1, max=64, message="员工长度必须介于 1 和 64 之间")
	@ExcelField(title="员工",  align=1, sort=3)
	public String getEmployee() {
		return employee;
	}

	public void setEmployee(String employee) {
		this.employee = employee;
	}
	
	@ExcelField(title="标准工时",  align=1, sort=4)
	public String getStandardWorkingHours() {
		return standardWorkingHours;
	}

	public void setStandardWorkingHours(String standardWorkingHours) {
		this.standardWorkingHours = standardWorkingHours;
	}
	
	@ExcelField(title="增值工时",  align=1, sort=5)
	public String getValueAddedHours() {
		return valueAddedHours;
	}
	
	public void setValueAddedHours(String valueAddedHours) {
		this.valueAddedHours = valueAddedHours;
	}
	
	@ExcelField(title="异常工时",  align=1, sort=6)
	public String getAbnormalWorkingHours() {
		return abnormalWorkingHours;
	}

	public void setAbnormalWorkingHours(String abnormalWorkingHours) {
		this.abnormalWorkingHours = abnormalWorkingHours;
	}
	
	@ExcelField(title="支持工时",  align=1, sort=7)
	public String getSupportWorkingHours() {
		return supportWorkingHours;
	}

	public void setSupportWorkingHours(String supportWorkingHours) {
		this.supportWorkingHours = supportWorkingHours;
	}
	
	
	@ExcelField(title="加班工时",  align=1, sort=8)
	public String getOvertimeHours() {
		return overtimeHours;
	}

	public void setOvertimeHours(String overtimeHours) {
		this.overtimeHours = overtimeHours;
	}
	
	@ExcelField(title="上班工时",  align=1, sort=9)
	public String getWorkingHours() {
		return workingHours;
	}

	public void setWorkingHours(String workingHours) {
		this.workingHours = workingHours;
	}
	@ExcelField(title="空闲工时",  align=1, sort=10)
	public String getIdleHours() {
		return idleHours;
	}

	public void setIdleHours(String idleHours) {
		this.idleHours = idleHours;
	}
	
	@Length(min=0, max=1, message="状态，0表示未统计，1表示已统计长度必须介于 0 和 1 之间")
	@ExcelField(title="状态",  align=1, sort=11)
	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}
	
}